home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / programming / aros / intuition / removeclass.c < prev    next >
Encoding:
C/C++ Source or Header  |  1996-09-12  |  1.6 KB  |  77 lines

  1. /*
  2.     (C) 1995-96 AROS - The Amiga Replacement OS
  3.     $Id: removeclass.c,v 1.1 1996/08/28 17:55:36 digulla Exp $
  4.     $Log: removeclass.c,v $
  5.     Revision 1.1  1996/08/28 17:55:36  digulla
  6.     Proportional gadgets
  7.     BOOPSI
  8.  
  9.  
  10.     Desc:
  11.     Lang: english
  12. */
  13. #include <clib/exec_protos.h>
  14. #include "intuition_intern.h"
  15.  
  16. /*****************************************************************************
  17.  
  18.     NAME */
  19.     #include <intuition/classes.h>
  20.     #include <clib/intuition_protos.h>
  21.  
  22.     __AROS_LH1(void, RemoveClass,
  23.  
  24. /*  SYNOPSIS */
  25.     __AROS_LHA(struct IClass *, classPtr, A0),
  26.  
  27. /*  LOCATION */
  28.     struct IntuitionBase *, IntuitionBase, 118, Intuition)
  29.  
  30. /*  FUNCTION
  31.     Makes a public class inaccessible. This function may be called
  32.     several times on the same class and even if the class never was
  33.     in the public list.
  34.  
  35.     INPUTS
  36.     classPtr - Pointer to the result of MakeClass(). May be NULL.
  37.  
  38.     RESULT
  39.     None.
  40.  
  41.     NOTES
  42.  
  43.     EXAMPLE
  44.  
  45.     BUGS
  46.  
  47.     SEE ALSO
  48.     MakeClass(), FreeClass(), AddClass(), "Basic Object-Oriented
  49.     Programming System for Intuition" and "boopsi Class Reference"
  50.     Dokument.
  51.  
  52.     INTERNALS
  53.  
  54.     HISTORY
  55.     29-10-95    digulla automatically created from
  56.                 intuition_lib.fd and clib/intuition_protos.h
  57.  
  58. *****************************************************************************/
  59. {
  60.     __AROS_FUNC_INIT
  61.     __AROS_BASE_EXT_DECL(struct IntuitionBase *,IntuitionBase)
  62.  
  63.     /* Klasse da und noch/schon in der Liste ? */
  64.     if (classPtr && (classPtr->cl_Flags & CLF_INLIST))
  65.     {
  66.     Forbid ();
  67.  
  68.     Remove ((struct Node *)classPtr);
  69.  
  70.     Permit ();
  71.  
  72.     classPtr->cl_Flags &= ~CLF_INLIST;
  73.     }
  74.  
  75.     __AROS_FUNC_EXIT
  76. } /* RemoveClass */
  77.